<?php
// +----------------------------------------------------------------------
// | likeshop开源商城系统
// +----------------------------------------------------------------------
// | 欢迎阅读学习系统程序代码，建议反馈是我们前进的动力
// | gitee下载：https://gitee.com/likeshop_gitee
// | github下载：https://github.com/likeshop-github
// | 访问官网：https://www.likeshop.cn
// | 访问社区：https://home.likeshop.cn
// | 访问手册：http://doc.likeshop.cn
// | 微信公众号：likeshop技术社区
// | likeshop系列产品在gitee、github等公开渠道开源版本可免费商用，未经许可不能去除前后端官方版权标识
// |  likeshop系列产品收费版本务必购买商业授权，购买去版权授权后，方可去除前后端官方版权标识
// | 禁止对系统程序代码以任何目的，任何形式的再发布
// | likeshop团队版权所有并拥有最终解释权
// +----------------------------------------------------------------------
// | author: likeshop.cn.team
// +----------------------------------------------------------------------
namespace app\admin\controller;
use app\admin\controller\Common;
use app\admin\logic\BottleLogic;
use app\admin\logic\OrderLogic;
use app\admin\model\User;

class Bottle extends AdminBase{
    /**
     * note 煤气罐列表
     * create_time 2023/08/03 19:46
     */
    public function lists(){
        if($this->request->isAjax()){
            $get = $this->request->get();
            $lists = BottleLogic::lists($get);

            $this->_success('',$lists);
        }

        return $this->fetch();
    }
    /**
     * note 添加钢瓶
     * create_time 2020/10/22 10:14
     */
    public function add(){
        if($this->request->isAjax()){
            $post = $this->request->post();
            $result = $this->validate($post,'app\admin\validate\Bottle');
            if($result === true){
                $result = BottleLogic::add($post);
                if($result == true){
                    $this->_success('新增成功','');
                }
                $result = '新增失败';
            }
            return $this->_error($result,'');

        }
        $Common = new Common();
        $bottle_site_list = $Common->selectBottleSite();

        return $this->fetch();

    }
    /**
     * note 编辑优惠券
     * create_time 2020/10/22 10:15
     */
    public function edit($id){
        if($this->request->isAjax()){
            $post = $this->request->post();
//            $result = $this->validate($post,'app\admin\validate\Bottle');
//            if($result === true){
                $result = BottleLogic::edit($post);
                if($result == true){
                    $this->_success('编辑成功','');
                }
                $result = '编辑失败';
//            }
            return $this->_error($result,'');
        }
        $info = BottleLogic::first($id,true);
        $Common = new Common();
        $bottle_site_list = $Common->selectBottleSite();
        $this->assign('info',$info);
        return $this->fetch();
    }
    // 作废
    public function cancel()
    {
        if ($this->request->isAjax()) {
            $post = $this->request->post();
            $result = BottleLogic::edit($post);
            if($result == true){
                // 生成钢瓶记录，如果在站点，生成站点记录
                $bottle = \app\admin\model\Bottle::get($post['id']);
                $bottle_log = [
                    'bottle_code'=>$bottle['code'],
                    'type'=>8,
                    'info'=>'钢瓶作废',
                    'create_time'=>date("Y-m-d H:i:s",time()),
                    'site_id'=>$bottle['site_id'],
                    'uid'=>$bottle['user_id']
                ];
                $bottle_id = \app\admin\model\BottleLog::insertGetId($bottle_log);
                if($bottle==true && $bottle['site_id']> 0 ){
                    $bottle_exet_log=[
                        'bottle_log_id'=>json_encode([$bottle_id]),
                        'bootle_site_id'=>$bottle['site_id'],
                        'create_time'=>date("Y-m-d H:i:s",time()),
                    ];
                    \app\admin\model\BottleExetLog::insertGetId($bottle_exet_log);
                }
                $this->_success('操作成功','');
            }
            $result = '操作失败';
            return $this->_error($result,'');
        }
    }
    /**
     * note 删除优惠券
     * create_time 2020/10/22 10:15
     */
    public function del($id){
        if($this->request->isAjax()){
            $result = CouponLogic::del($id);

            if($result == true){
                $this->_success('删除成功','');
            }
            return $this->_error('删除失败','');
        }
    }
    /**
     * note 优惠券发放记录
     * create_time 2020/10/22 10:18
     */
    public function log($id){
        if($this->request->isAjax()){
            $get = $this->request->get();
            $lists = CouponLogic::log($get);
            $this->_success('',$lists);
        }
        $this->assign('id',$id);
        return $this->fetch();
    }
   /**
    * note 优惠券详情
    * create_time 2020/10/22 10:18
    */
    public function detail($id){
        $detail = CouponLogic::getCoupon($id,true);
        $this->assign('detail',json_encode($detail,JSON_UNESCAPED_UNICODE));
        return $this->fetch();
    }
    /**
     * note 关闭优惠券
     * create_time 2020/10/22 10:19
     */
    public function close($id){
        if($this->request->isAjax()){
            $result = CouponLogic::close($id);
            if($result == true){
                $this->_success('优惠券关闭成功','');
            }
            return $this->_error('优惠券关闭失败，请重新关闭','');

        }

    }
    public function sendCouponList(){
        if($this->request->isAjax()){
            $list = CouponLogic::sendCouponList();
            $this->_success('',$list);
        }
        return $this->fetch();
    }
    public function sendCoupon(){
        if($this->request->isAjax()){
            $post = $this->request->post();
            $result = $this->validate($post,'app\admin\validate\SendCoupon');
            if($result === true){
                CouponLogic::sendCoupon($post);
                return $this->_success('发放成功',[]);
            }
            return $this->_error($result,'');
        }


    }
}